00001 #ifndef __MS_PLUGIN_H__ 00002 #define __MS_PLUGIN_H__ 00003 00004 00005 00006 struct msModel; 00007 class cMsPlugIn 00008 { 00009 public: 00010 enum 00011 { 00012 eTypeImport = 1, 00013 eTypeExport = 2, 00014 eTypeTool = 3, 00015 eTypeEdit = 4, 00016 eTypeVertex = 5, 00017 eTypeFace = 6, 00018 eTypeAnimate = 7 00019 }; 00020 00021 public: 00022 cMsPlugIn () {}; 00023 virtual ~cMsPlugIn () {}; 00024 00025 public: 00026 virtual int GetType () = 0; 00027 virtual const char * GetTitle () = 0; 00028 virtual int Execute (msModel* pModel) = 0; 00029 }; 00030 00031 00032 00033 typedef cMsPlugIn* (*FN_CREATE_PLUGIN)(); 00034 00035 cMsPlugIn *CreatePlugIn (); 00036 00037 00038 00039 #endif // __MS_PLUGIN_H__
1.3-rc3